import java.util.ArrayList;
import java.util.List;

public class TestArrayList {
    public static void main(String[] args) {
        ArrayList <Integer> list=new ArrayList<>();
        list.add(11);
        list.add(12);
        list.add(13);
        list.add(14);
        list.add(15);
        list.add(2,3);
        list.remove(3);//删除的是3下标所对应的数据，而不是数值3，因为此处给的3属于int类型
        list.remove(new Integer(3));//此处删除的就是数值3，因为给的类型是Integer类型
        Integer ii=3;
        list.remove(ii);//和上面的效果一样，都可以把3删除
        boolean s=list.contains(11);
        System.out.println(s);
        int lo=list.get(3);
        System.out.println(lo);
        int ls=list.indexOf(new Integer(11));
        System.out.println(ls);
        List<Integer> subList=list.subList(1,3);
        subList.set(0,999);
        System.out.println(subList);//sublist只是将原list中1，2下标的地址获取过来，并不是正真意义上的截取1，2下标所对应的数值
                                   //所以通过sublist.set修改0下标的值，原list中的值也会被改变
        System.out.println(list);
        System.out.println("==================");
        ArrayList <Integer> list2=new ArrayList<>();
        list2.addAll(list);//将list作为参数传给list2,list2中就有list中的数据了
        list2.add(22);
        System.out.println(list2);
    }
}
